In typical virtualized desktop infrastructure architectures, displays and input devices are local, and applications execute remotely in a server. In Virtual Desktop Infrastructure (VDI) deployments, a user's desktop is typically hosted in a datacenter or cloud, and the user remotely interacts with the user's desktop via a variety of endpoint devices, including desktops, laptops, thin clients, smart phones, tablets, etc. There are many advantages to this approach, including cost savings, improved mobility, easier management and deployment of applications, etc.
Remote display protocols are utilized to transfer the display of a remote desktop to the end-client. As applications executing in the desktop generate changes to the display, the remote display protocol transfers the display data to the remote client. Typically, the user interacts with the desktop via local mouse and keyboard inputs, and these inputs are transferred to the virtual desktop running in the remote datacenter. The keyboard and mouse events are processed and the resulting changes in the display view are sent as display updates to the client.
However, the display view may also change due to other factors, such as the ticking of a clock on a desktop clock. In addition, some display updates are not really important but the resources (e.g., processor, network bandwidth, etc.) utilized to transfer these display updates may be significant.
It is in this context that embodiments arise.